package com.six.dao;

import java.util.List;

import org.springframework.transaction.annotation.Transactional;

import com.six.vo.User;

/**
 * IUserDao 针对用户数据库 CRUD 操作
 * 
 */
//@Transactional(propagation=Propagation.REQUIRED)
public interface IUserDao {
	/**
	 * 保存新员工数据
	 * 
	 */
	public void saveUser(User user);
	/**
	 * 更新员工数据
	 * 
	 */
	public void updateUser(User user);
	/**
	 * 根据用户 id 查询用户
	 * 
	 */
	@Transactional(readOnly=true)
	public User findUserById(int uid);
	/**
	 * 删除用户，将用户状态置为【删除】状态
	 * 
	 */
	public void deleteUser(int uid) throws Exception;
	/**
	 * 根据指定条件查询
	 * 
	 */
	@Transactional(readOnly=true)
	public List<User> findUserList(int uid,String username);
	/**
	 * 恢复用户，将用户状态置为【活动】状态
	 * 
	 */
	public void revertUser(int uid) throws Exception;
	/**
	 * 用户登录，根据登录帐号和密码
	 * 
	 */
	@Transactional(readOnly=true)
	public User loginByNameAndPassword(String userAccount,String userPwd );
	/**
	 * 根据管理员登录名查找管理员
	 * 
	 */
	@Transactional(readOnly=true)
	public List<User> findUserByAccount(String Account);

}
